package com.weixin.paleituo.base;

import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.weixin.paleituo.R;
import com.weixin.paleituo.annotation.OrderStatusType;
import com.weixin.paleituo.bean.GoodsListBean;
import com.weixin.paleituo.bean.StoreListBean;
import com.weixin.paleituo.util.UIUtils;
import com.weixin.paleituo.view.MyHorizontalScrollView;

import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;

/**
 * Author yichao
 * Time  2018/4/7 17:51
 * Dest  base订单
 */

public class BaseOrderRecycleAdapter extends RecyclerView.Adapter {
    protected String TAG = this.getClass().getSimpleName();

    protected Context mContext;
    private List<StoreListBean> mStoreListBeans;
    // item_order_head

    private final int custom_await_pricing_type = 1;//定制待定价
    private final int custom_await_payfor_type = 2;//定制待付款
    private final int nocustom_await_payfor_type = 3;//正常商品待付款

    private final int custom_await_receiving_type = 4;  //定制待收货
    private final int nocustom_await_receiving_type = 5;//非定制待收货


    private final int custom_complete_type = 6;  //定制完成收货
    private final int nocustom_complete_type = 7; //非定制完成收货

    private final int custom_cancle_type = 8;  //定制取消
    private final int nocustom_cancle_type = 9;// 非定制取消

    public BaseOrderRecycleAdapter(Context context, List<StoreListBean> storeListBeans) {
        mContext = context;
        mStoreListBeans = storeListBeans;
    }

    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

        if (viewType == custom_await_pricing_type) {
            CustomAwaitPriceViewHolder customAwaitPriceViewHolder = new CustomAwaitPriceViewHolder(UIUtils.inflate(mContext, R.layout.custom_for_pricing));
            return customAwaitPriceViewHolder;
        } else if (viewType == custom_await_payfor_type) {
            CustomAwaitPayforViewHolder customAwaitPayforViewHolder = new CustomAwaitPayforViewHolder(UIUtils.inflate(mContext, R.layout.item_custom_awaitfor));
            return customAwaitPayforViewHolder;
        } else if (viewType == nocustom_await_payfor_type) {
            NoCustomAwaitPayforViewHolder noCustomAwaitPayforViewHolder = new NoCustomAwaitPayforViewHolder(UIUtils.inflate(mContext, R.layout.item_nocustom_awaitfor));
            return noCustomAwaitPayforViewHolder;
        } else if (viewType == custom_await_receiving_type) {

            CustomAwaitReceingViewHolder customAwaitReceingViewHolder = new CustomAwaitReceingViewHolder(UIUtils.inflate(mContext, R.layout.custom_await_receving));
            return customAwaitReceingViewHolder;
        } else if (viewType == nocustom_await_receiving_type) {

            NoCustomAwaitReceingViewHolder noCustomAwaitReceingViewHolder = new NoCustomAwaitReceingViewHolder(UIUtils.inflate(mContext, R.layout.nocustom_await_receving));
            return noCustomAwaitReceingViewHolder;

        } else if (viewType == custom_complete_type) {
            CustomCompleteViewHolder customCompleteViewHolder = new CustomCompleteViewHolder(UIUtils.inflate(mContext, R.layout.custom_complete));
            return customCompleteViewHolder;
        } else if (viewType == nocustom_complete_type) {
            NoCustomCompleteViewHolder noCustomCompleteViewHolder = new NoCustomCompleteViewHolder(UIUtils.inflate(mContext, R.layout.nocustom_complete));
            return noCustomCompleteViewHolder;

        } else if (viewType == custom_cancle_type) {
            CustomCancleViewHolder customCancleViewHolder = new CustomCancleViewHolder(UIUtils.inflate(mContext, R.layout.custom_cancel));
            return customCancleViewHolder;

        } else if (viewType == nocustom_cancle_type) {
            NoCustomCancleViewHolder noCustomCancleViewHolder = new NoCustomCancleViewHolder(UIUtils.inflate(mContext, R.layout.nocustom_cancel));
            return noCustomCancleViewHolder;
        }

        return null;
    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {


        StoreListBean storeListBean = mStoreListBeans.get(position);
        List<GoodsListBean> goodsList = storeListBean.getGoodsList();
        if (goodsList != null && goodsList.size() > 0) {
            //有数据
            if (holder instanceof CustomAwaitPriceViewHolder) {
                //定制等待定价
                CustomAwaitPriceViewHolder customAwaitPriceViewHolder = (CustomAwaitPriceViewHolder) holder;
                setCustomAwaitPricData(customAwaitPriceViewHolder, storeListBean, goodsList, position);

            } else if (holder instanceof CustomAwaitPayforViewHolder) {
                //定制等待等待付款
                CustomAwaitPayforViewHolder customAwaitPayforViewHolder = (CustomAwaitPayforViewHolder) holder;

                setCustomAwaitPayforcData(customAwaitPayforViewHolder, storeListBean, goodsList, position);


            } else if (holder instanceof NoCustomAwaitPayforViewHolder) {
                //非定制等待付款
                NoCustomAwaitPayforViewHolder noCustomAwaitPayforViewHolder = (NoCustomAwaitPayforViewHolder) holder;
                setNoCustomAwaitPayforData(noCustomAwaitPayforViewHolder, storeListBean, goodsList, position);

            } else if (holder instanceof CustomAwaitReceingViewHolder) {
                //定制等待收货
                CustomAwaitReceingViewHolder customAwaitReceingViewHolder = (CustomAwaitReceingViewHolder) holder;

                setCustomAwaitReceingData(customAwaitReceingViewHolder, storeListBean, goodsList, position);
            } else if (holder instanceof NoCustomAwaitReceingViewHolder) {
                //非定制等待收货
                NoCustomAwaitReceingViewHolder noCustomAwaitReceingViewHolder = (NoCustomAwaitReceingViewHolder) holder;
                setNoCustomAwaitReceingData(noCustomAwaitReceingViewHolder, storeListBean, goodsList, position);


            } else if (holder instanceof CustomCompleteViewHolder) {
                //定制完成
                CustomCompleteViewHolder customCompleteViewHolder = (CustomCompleteViewHolder) holder;
                setCustomCompleteData(customCompleteViewHolder, storeListBean, goodsList, position);


            } else if (holder instanceof NoCustomCompleteViewHolder) {
                //非定制完成
                NoCustomCompleteViewHolder noCustomCompleteViewHolder = (NoCustomCompleteViewHolder) holder;
                setNoCustomCompleteData(noCustomCompleteViewHolder, storeListBean, goodsList, position);

            } else if (holder instanceof CustomCancleViewHolder) {
                //定制取消
                CustomCancleViewHolder customCancleViewHolder = (CustomCancleViewHolder) holder;
                setCustomCancleData(customCancleViewHolder, storeListBean, goodsList, position);

            } else if (holder instanceof NoCustomCancleViewHolder) {
                //非定制取消
                NoCustomCancleViewHolder noCustomCancleViewHolder = (NoCustomCancleViewHolder) holder;
                setNoCustomCancleData(noCustomCancleViewHolder, storeListBean, goodsList, position);
            }

        }


    }

    /**
     * 非定制取消
     *
     * @param noCustomCancleViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setNoCustomCancleData(NoCustomCancleViewHolder noCustomCancleViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 定制取消
     *
     * @param customCancleViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setCustomCancleData(CustomCancleViewHolder customCancleViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置非定制完成
     *
     * @param noCustomCompleteViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setNoCustomCompleteData(NoCustomCompleteViewHolder noCustomCompleteViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置定制完成
     *
     * @param customCompleteViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */

    protected void setCustomCompleteData(CustomCompleteViewHolder customCompleteViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置非定制
     *
     * @param noCustomAwaitReceingViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */

    protected void setNoCustomAwaitReceingData(NoCustomAwaitReceingViewHolder noCustomAwaitReceingViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置定制等待收货
     *
     * @param customAwaitReceingViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setCustomAwaitReceingData(CustomAwaitReceingViewHolder customAwaitReceingViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置非定制待付款
     *
     * @param noCustomAwaitPayforViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setNoCustomAwaitPayforData(NoCustomAwaitPayforViewHolder noCustomAwaitPayforViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置定制待付款
     *
     * @param customAwaitPayforViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setCustomAwaitPayforcData(CustomAwaitPayforViewHolder customAwaitPayforViewHolder, StoreListBean storeListBean, List<GoodsListBean> goodsList, int position) {
    }

    /**
     * 设置定制待定价数据
     *
     * @param customAwaitPriceViewHolder
     * @param storeListBean
     * @param goodsList
     * @param position
     */
    protected void setCustomAwaitPricData(CustomAwaitPriceViewHolder customAwaitPriceViewHolder,
                                          StoreListBean storeListBean,
                                          List<GoodsListBean> goodsList, int position) {

    }

    @Override
    public int getItemCount() {

        return mStoreListBeans != null && mStoreListBeans.size() > 0 ? mStoreListBeans.size() : 0;
    }

    @Override
    public int getItemViewType(int position) {
        StoreListBean storeListBean = mStoreListBeans.get(position);
        int orderStatus = storeListBean.getOrderStatus();
        int madeType = storeListBean.getMadeType();
        //1-定制订单，2-普通订单
        //订单状态1-待付款，2-待收货，4-已收货，，7-已取消
        switch (orderStatus) {
            case OrderStatusType.WAIT_PAY:
                if (madeType == 1) {
                    if (storeListBean.getGoodsPrice() > 0) {
                        //待付款
                        return custom_await_payfor_type;
                    } else {
                        //待定价
                        return custom_await_pricing_type;
                    }

                } else if (madeType == 2) {
                    return nocustom_await_payfor_type;
                }
                break;
            case OrderStatusType.WAIT_RECEIVING:
            case OrderStatusType.WAIT_SHIPMENTS:
                if (madeType == 1) {
                    return custom_await_receiving_type;
                } else if (madeType == 2) {
                    return nocustom_await_receiving_type;
                }
                break;
            case OrderStatusType.FINISH:
            case OrderStatusType.COMPLETE:
                if (madeType == 1) {
                    return custom_complete_type;
                } else if (madeType == 2) {
                    return nocustom_complete_type;
                }

                break;
            case OrderStatusType.CANCEL:
                if (madeType == 1) {
                    return custom_cancle_type;
                } else if (madeType == 2) {
                    return nocustom_cancle_type;
                }
                break;
        }
        return super.getItemViewType(position);
    }

    public class CustomAwaitPriceViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.iv_goodsicon_custom_for_pricing)
        public ImageView mIvGoodsiconCustomForPricing;
        @BindView(R.id.tv_messge_custom_for_pricing)
        public TextView mTvMessgeCustomForPricing;
        @BindView(R.id.ll_customconetRoot_layout_order_custom_conttent)
        public LinearLayout mLlCustomconetRootLayoutOrderCustomConttent;
        @BindView(R.id.tv_goodsnumber_custom_for_pricing)
        public TextView mTvGoodsnumberCustomForPricing;
        @BindView(R.id.tv_awaitpayfor_custom_for_pricing)
        public TextView mTvAwaitpayforCustomForPricing;

        public CustomAwaitPriceViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
            //   UIUtils.inflate(mContext, R.layout.custom_for_pricing)
        }
    }

    public class CustomAwaitPayforViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.iv_goodsicon_custom_for_pricing)
        public ImageView mIvGoodsiconCustomForPricing;
        @BindView(R.id.tv_messge_custom_for_pricing)
        public TextView mTvMessgeCustomForPricing;
        @BindView(R.id.ll_customconetRoot_layout_order_custom_conttent)
        public LinearLayout mLlCustomconetRootLayoutOrderCustomConttent;
        @BindView(R.id.tv_goodsnumber_item_custom_awaitfor)
        public TextView mTvGoodsnumberItemCustomAwaitfor;
        @BindView(R.id.tv_payfor_money_item_custom_awaitfor)
        public TextView mTvPayforMoneyItemCustomAwaitfor;
        @BindView(R.id.tv_gopayfor_item_custom_awaitfor)
        public TextView mTvGopayforItemCustomAwaitfor;

        public CustomAwaitPayforViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
            // UIUtils.inflate(mContext, R.layout.item_custom_awaitfor)

        }
    }

    public class NoCustomAwaitPayforViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.ll_horizontalscrollview_item_nocustom_awaitfor)
        public LinearLayout mLlHorizontalscrollviewItemNocustomAwaitfor;
        @BindView(R.id.id_horizontalScrollView_item_nocustom_awaitfor)
        public MyHorizontalScrollView mIdHorizontalScrollViewItemNocustomAwaitfor;
        @BindView(R.id.ll_nocustom_content_root)
        public LinearLayout mLlNocustomContentRoot;
        @BindView(R.id.tv_goodsnumber_item_nocustom_awaitfor)
        public TextView mTvGoodsnumberItemNocustomAwaitfor;
        @BindView(R.id.tv_paymoney_item_nocustom_awaitfor)
        public TextView mTvPaymoneyItemNocustomAwaitfor;
        @BindView(R.id.tv_gopayfor_item_nocustom_)
        public TextView mTvGopayforItemNocustom;
        @BindView(R.id.ll_nocustom_right_layout)
        public LinearLayout mLlNocustomRightLayout;

        public NoCustomAwaitPayforViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
         //   UIUtils.inflate(mContext, R.layout.item_nocustom_awaitfor)
        }
    }

    /**
     * 定制等待收货
     */

    public class CustomAwaitReceingViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.iv_expresscar_custom_await_receving)
        public ImageView mIvExpresscarCustomAwaitReceving;
        @BindView(R.id.tv_expresstitle_custom_await_receving)
        public TextView mTvExpresstitleCustomAwaitReceving;
        @BindView(R.id.tv_express_time_custom_await_receving)
        public TextView mTvExpressTimeCustomAwaitReceving;
        @BindView(R.id.rl_expressinfo_custom_await_receving)
        public RelativeLayout mRlExpressinfoCustomAwaitReceving;
        @BindView(R.id.iv_goodsicon_custom_for_pricing)
        public ImageView mIvGoodsiconCustomForPricing;
        @BindView(R.id.tv_messge_custom_for_pricing)
        public TextView mTvMessgeCustomForPricing;
        @BindView(R.id.ll_customconetRoot_layout_order_custom_conttent)
        public LinearLayout mLlCustomconetRootLayoutOrderCustomConttent;
        @BindView(R.id.tv_goodsnumber_custom_await_receving)
        public TextView mTvGoodsnumberCustomAwaitReceving;
        @BindView(R.id.tv_awaitpayfor_custom_await_receving)
        public TextView mTvAwaitpayforCustomAwaitReceving;
        @BindView(R.id.tv_surereceving_custom_await_receving)
        public TextView mTvSurerecevingCustomAwaitReceving;
        @BindView(R.id.tv_check_express_custom_await_receving)
        public TextView mTvCheckExpressCustomAwaitReceving;
        @BindView(R.id.rl_foot_custom_await_receving)
        public RelativeLayout mRlFootCustomAwaitReceving;

        public CustomAwaitReceingViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
            //  UIUtils.inflate(mContext, R.layout.custom_await_receving)
        }
    }

    /**
     * 非定制等待收货
     */

    public class NoCustomAwaitReceingViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.iv_expresscar_nocustom_await_receving)
        public ImageView mIvExpresscarNocustomAwaitReceving;
        @BindView(R.id.tv_expresstitle_nocustom_await_receving)
        public TextView mTvExpresstitleNocustomAwaitReceving;
        @BindView(R.id.tv_express_time_nocustom_await_receving)
        public TextView mTvExpressTimeNocustomAwaitReceving;
        @BindView(R.id.rl_expressinfo_nocustom_await_receving)
        public RelativeLayout mRlExpressinfoNocustomAwaitReceving;
        @BindView(R.id.ll_horizontalscrollview_item_nocustom_awaitfor)
        public LinearLayout mLlHorizontalscrollviewItemNocustomAwaitfor;
        @BindView(R.id.id_horizontalScrollView_item_nocustom_awaitfor)
        public MyHorizontalScrollView mIdHorizontalScrollViewItemNocustomAwaitfor;
        @BindView(R.id.ll_nocustom_content_root)
        public LinearLayout mLlNocustomContentRoot;
        @BindView(R.id.tv_goodsnumber_nocustom_await_receving)
        public TextView mTvGoodsnumberNocustomAwaitReceving;
        @BindView(R.id.tv_awaitpayfor_nocustom_await_receving)
        public TextView mTvAwaitpayforNocustomAwaitReceving;
        @BindView(R.id.tv_surereceving_nocustom_await_receving)
        public TextView mTvSurerecevingNocustomAwaitReceving;
        @BindView(R.id.tv_check_express_custom_await_receving)
        public TextView mTvCheckExpressCustomAwaitReceving;
        @BindView(R.id.rl_nocustom_await_receving)
        public RelativeLayout mRlNocustomAwaitReceving;
        @BindView(R.id.ll_nocustom_right_layout)
        public  LinearLayout mLlNocustomRightLayout;

        public NoCustomAwaitReceingViewHolder(View itemView) {
            super(itemView);
            //  UIUtils.inflate(mContext, R.layout.nocustom_await_receving)
            ButterKnife.bind(this, itemView);
        }
    }

    /**
     * 定制完成
     */
    public class CustomCompleteViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_complete_head)
        public ImageView mIvIconItemOrderCompleteHead;
        @BindView(R.id.tv_store_name_item_order_complete_head)
        public TextView mTvStoreNameItemOrderCompleteHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_complete_head)
        public LinearLayout mLlStorerootItemOrderCompleteHead;
        @BindView(R.id.iv_delete_item_order_complete_head)
        public ImageView mIvDeleteItemOrderCompleteHead;
        @BindView(R.id.iv_goodsicon_custom_for_pricing)
        public ImageView mIvGoodsiconCustomForPricing;
        @BindView(R.id.tv_messge_custom_for_pricing)
        public TextView mTvMessgeCustomForPricing;
        @BindView(R.id.ll_customconetRoot_layout_order_custom_conttent)
        public LinearLayout mLlCustomconetRootLayoutOrderCustomConttent;
        @BindView(R.id.tv_goodsnumber_custom_complete)
        public TextView mTvGoodsnumberCustomComplete;
        @BindView(R.id.tv_awaitpayfor_custom_complete)
        public TextView mTvAwaitpayforCustomComplete;
        @BindView(R.id.tv_surereceving_ccustom_complete)
        public TextView mTvSurerecevingCcustomComplete;

        public CustomCompleteViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
            // UIUtils.inflate(mContext, R.layout.custom_complete)
        }
    }

    /**
     * 非定制完成
     */
    public class NoCustomCompleteViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_complete_head)
        public ImageView mIvIconItemOrderCompleteHead;
        @BindView(R.id.tv_store_name_item_order_complete_head)
        public TextView mTvStoreNameItemOrderCompleteHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_complete_head)
        public LinearLayout mLlStorerootItemOrderCompleteHead;
        @BindView(R.id.iv_delete_item_order_complete_head)
        public ImageView mIvDeleteItemOrderCompleteHead;
        @BindView(R.id.ll_horizontalscrollview_item_nocustom_awaitfor)
        public LinearLayout mLlHorizontalscrollviewItemNocustomAwaitfor;
        @BindView(R.id.id_horizontalScrollView_item_nocustom_awaitfor)
        public MyHorizontalScrollView mIdHorizontalScrollViewItemNocustomAwaitfor;
        @BindView(R.id.ll_nocustom_content_root)
        public LinearLayout mLlNocustomContentRoot;
        @BindView(R.id.tv_goodsnumber_nocustom_complete)
        public TextView mTvGoodsnumberNocustomComplete;
        @BindView(R.id.tv_awaitpayfor_nocustom_complete)
        public TextView mTvAwaitpayforNocustomComplete;
        @BindView(R.id.tv_surereceving_noccustom_complete)
        public TextView mTvSurerecevingNoccustomComplete;
        @BindView(R.id.ll_nocustom_right_layout)
        public  LinearLayout mLlNocustomRightLayout;

        public NoCustomCompleteViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
            //  UIUtils.inflate(mContext, R.layout.nocustom_complete)
        }
    }

    /**
     * 定制取消
     */
    public class CustomCancleViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.iv_del_item_cancel_order_head)
        public ImageView mIvDelItemCancelOrderHead;
        @BindView(R.id.iv_goodsicon_custom_for_pricing)
        public ImageView mIvGoodsiconCustomForPricing;
        @BindView(R.id.tv_messge_custom_for_pricing)
        public TextView mTvMessgeCustomForPricing;
        @BindView(R.id.ll_customconetRoot_layout_order_custom_conttent)
        public LinearLayout mLlCustomconetRootLayoutOrderCustomConttent;
        @BindView(R.id.tv_goodsnumber_custom_for_pricing)
        public TextView mTvGoodsnumberCustomForPricing;
        @BindView(R.id.tv_awaitpayfor_custom_for_pricing)
        public TextView mTvAwaitpayforCustomForPricing;

        public CustomCancleViewHolder(View itemView) {
            super(itemView);
            //   UIUtils.inflate(mContext, R.layout.custom_cancel)
            ButterKnife.bind(this, itemView);
        }
    }

    /**
     * 非定制取消
     */
    public class NoCustomCancleViewHolder extends RecyclerView.ViewHolder {


        @BindView(R.id.iv_icon_item_order_head)
        public ImageView mIvIconItemOrderHead;
        @BindView(R.id.tv_store_name_item_order_head)
        public TextView mTvStoreNameItemOrderHead;
        @BindView(R.id.iv_more_item_order_head)
        public ImageView mIvMoreItemOrderHead;
        @BindView(R.id.ll_storeroot_item_order_head)
        public LinearLayout mLlStorerootItemOrderHead;
        @BindView(R.id.tv_pricestate_item_order_head)
        public TextView mTvPricestateItemOrderHead;
        @BindView(R.id.iv_del_item_cancel_order_head)
        public ImageView mIvDelItemCancelOrderHead;
        @BindView(R.id.ll_horizontalscrollview_item_nocustom_awaitfor)
        public LinearLayout mLlHorizontalscrollviewItemNocustomAwaitfor;
        @BindView(R.id.id_horizontalScrollView_item_nocustom_awaitfor)
        public MyHorizontalScrollView mIdHorizontalScrollViewItemNocustomAwaitfor;
        @BindView(R.id.ll_nocustom_content_root)
        public LinearLayout mLlNocustomContentRoot;
        @BindView(R.id.tv_goodsnumber_custom_for_pricing)
        public TextView mTvGoodsnumberCustomForPricing;
        @BindView(R.id.tv_awaitpayfor_custom_for_pricing)
        public TextView mTvAwaitpayforCustomForPricing;
        @BindView(R.id.ll_nocustom_right_layout)
        public  LinearLayout mLlNocustomRightLayout;

        public NoCustomCancleViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
            //  UIUtils.inflate(mContext, R.layout.nocustom_cancel)
        }
    }

}
